import java.util.Vector;

public class Spel
{	private int maxInzet;
	private int minInzet;
	private int aantalSpelers;
	private Speler[] spelers;
	private Vector<Spelronde> spelrondes;
	private Spelronde huidigeronde;
	private KaartStapel kaartstapel;
	/**
	 * Maakt spel object aan met een array van spelers een min inzet en
	 * een max inzet, em het aantal spelers wat mee speelt, maakt daarna een
	 * Kaart stapel aan met 6 kaartspellen.
	 * @param max
	 * @param min
	 * @param aantal
	 * @param d
	 */
	public Spel(int max, int min, int aantal, Speler[] d)
	{	maxInzet = max;
		minInzet = min;
		aantalSpelers = aantal;
		spelers = d;
		spelrondes = new Vector<Spelronde>();
		kaartstapel = new KaartStapel(6);
	}

	public int getMaxInzet()
	{	return maxInzet;
	}

	public int getMinInzet()
	{	return minInzet;
	}

	public int getAantalSpelers()
	{	return aantalSpelers;
	}

	public Speler[] getSpelers()
	{	return spelers;
	}

	public void setMaxInzet(int i)
	{	maxInzet = i;
	}

	public void setMinInzet(int i)
	{	minInzet = i;
	}

	public void setAantalSpelers(int s)
	{	aantalSpelers = s;
	}

	public void setSpelers(Speler[] s)
	{	spelers = s;
	}

	/**
	 * Start een nieuwe nieuwe spelronde. En voegt hem toe aan de Vector
	 * Hij wordt ook gereturned voor de SpelController
	 * @return Spelronde
	 */
	public Spelronde nieuweRonde()
	{
		kaartstapel = new KaartStapel(6);
		huidigeronde = new Spelronde(spelers, minInzet, maxInzet,kaartstapel);
		spelrondes.add(huidigeronde);
		return huidigeronde;
	}
	
	public Vector<Spelronde> getRondes()
	{	return spelrondes;
	}
}